home *** CD-ROM | disk | FTP | other *** search
/ Joystick Magazine 7 / Joystick Magazine 07.iso / mac / Fouillationnons! / Jeux / Xconq 7.0.1 / lib / empire.g < prev    next >
Text File  |  1995-08-22  |  15KB  |  542 lines

  1. (game-module "empire"
  2.   (title "Empire")
  3.   (blurb "The classic big economic/military game")
  4.   (variants
  5.    (world-seen false)
  6.    (see-all false)
  7.    ("Only One Winner" one-winner true
  8.      (true
  9.       (scorekeeper (do last-side-wins))
  10.       ))
  11.    ("More Starters" more-starters true
  12.      (true
  13.       (add harbor start-with 1)
  14.       ))
  15.    )
  16.   )
  17.  
  18. (unit-type infantry (image-name "infantry"))
  19. (unit-type motor-infantry (image-name "infantry"))
  20. (unit-type mech-infantry (image-name "infantry"))
  21. (unit-type marines (image-name "infantry"))
  22. (unit-type security (image-name "infantry"))
  23. (unit-type cavalry (image-name "cavalry"))
  24. (unit-type light-armor (image-name "tank"))
  25. (unit-type armor (image-name "tank"))
  26. (unit-type heavy-armor (image-name "tank"))
  27. (unit-type artillery (image-name "artillery"))
  28. (unit-type light-artillery (image-name "artillery"))
  29. (unit-type heavy-artillery (image-name "artillery"))
  30. (unit-type mech-artillery (image-name "artillery"))
  31. (unit-type aa (image-name "flak"))
  32. (unit-type supply (image-name "truck"))
  33. (unit-type engineers (image-name "engineers"))
  34. (unit-type mech-engineers (image-name "engineers"))
  35. (unit-type mobile-radar (image-name "radar"))
  36.  
  37. (define infantry-types (infantry motor-infantry mech-infantry marines security))
  38.  
  39. (define armor-types (light-armor armor heavy-armor))
  40.  
  41. (define artillery-types (artillery light-artillery heavy-artillery mech-artillery aa))
  42.  
  43. (define ground-types
  44.   (append infantry-types cavalry armor-types artillery-types
  45.    supply engineers mech-engineers mobile-radar
  46.    ))
  47.  
  48. (add ground-types acp-per-turn 2)
  49.  
  50. (unit-type fishing-boat (image-name "ap"))
  51.  
  52. (unit-type cargo-ship (image-name "ap"))
  53. (unit-type tanker (image-name "ap"))
  54. (unit-type ore-ship (image-name "ap"))
  55. (unit-type slave-ship (image-name "ap"))
  56. (unit-type troop-transport (image-name "ap"))
  57. (unit-type landing-craft (image-name "ap"))
  58.  
  59. (unit-type torpedo-boat (image-name "dd"))
  60. (unit-type destroyer (image-name "dd"))
  61. (unit-type frigate (image-name "dd"))
  62. (unit-type light-cruiser (image-name "ca"))
  63. (unit-type heavy-cruiser (image-name "ca"))
  64. (unit-type battleship (image-name "bb"))
  65.  
  66. (unit-type light-carrier (image-name "cv"))
  67. (unit-type escort-carrier (image-name "cv"))
  68. (unit-type carrier (image-name "cv"))
  69. (unit-type missile-frigate (image-name "dd"))
  70. (unit-type missile-cruiser (image-name "ca"))
  71.  
  72. (unit-type submarine (image-name "sub"))
  73. (unit-type asw-cruiser (image-name "ca"))
  74. (unit-type minesweeper (image-name "ap"))
  75.  
  76. (define production-ship-types (fishing-boat))
  77.  
  78. (define material-transport-ship-types (cargo-ship tanker ore-ship slave-ship))
  79.  
  80. (define transport-ship-types (troop-transport landing-craft))
  81.  
  82. (define surface-combat-ship-types
  83.   (torpedo-boat destroyer frigate light-cruiser heavy-cruiser battleship))
  84.  
  85. (define carrier-ship-types
  86.   (light-carrier escort-carrier carrier))
  87.  
  88. (define air-combat-ship-types
  89.   (light-carrier escort-carrier carrier missile-frigate missile-cruiser))
  90.  
  91. (define ship-types
  92.   (append production-ship-types material-transport-ship-types
  93.    transport-ship-types surface-combat-ship-types air-combat-ship-types
  94.    submarine asw-cruiser minesweeper
  95.    ))
  96.  
  97. (add ship-types acp-per-turn 4)
  98.  
  99. (unit-type fighter-1 (image-name "fighter"))
  100. (unit-type fighter-2 (image-name "fighter"))
  101. (unit-type escort (image-name "fighter"))
  102. (unit-type naval-fighter (image-name "fighter"))
  103. (unit-type light-bomber (image-name "4e"))
  104. (unit-type medium-bomber (image-name "4e"))
  105. (unit-type heavy-bomber (image-name "4e"))
  106. (unit-type transport (image-name "4e"))
  107. (unit-type attack-helicopter (image-name "helicopter"))
  108. (unit-type transport-helicopter (image-name "cargo-chopper"))
  109. (unit-type recon-plane (image-name "4e"))
  110. (unit-type asw-plane (image-name "4e"))
  111. (unit-type missile (image-name "missile"))
  112. (unit-type icbm (image-name "icbm"))
  113. (unit-type sam (image-name "missile"))
  114. (unit-type abm (image-name "missile"))
  115.  
  116. (define fighter-types (fighter-1 fighter-2 escort naval-fighter))
  117.  
  118. (define bomber-types (light-bomber medium-bomber heavy-bomber))
  119.  
  120. (define helicopter-types (attack-helicopter transport-helicopter))
  121.  
  122. (define missile-types (missile icbm sam abm))
  123.  
  124. (define plane-types
  125.   (append fighter-types
  126.    bomber-types
  127.    transport
  128.    helicopter-types
  129.    recon-plane asw-plane
  130.    missile-types
  131.    ))
  132.  
  133. (add plane-types acp-per-turn 8)
  134.  
  135. (add missile-types acp-per-turn 1)
  136.  
  137. (unit-type small-nuke (image-name "bomb"))
  138. (unit-type medium-nuke (image-name "bomb"))
  139. (unit-type large-nuke (image-name "bomb"))
  140.  
  141. (define nuke-types (small-nuke medium-nuke large-nuke))
  142.  
  143. (add nuke-types acp-per-turn 1)
  144.  
  145. ;; The remaining types are actually "sector types" in Empire, but
  146. ;; they work better as cell-filling unit types in Xconq.
  147. ;; Bridges can be highways over water, not needed as units.
  148.  
  149. (unit-type radar (image-name "radar") (char ")")
  150.   (help "fixed radar station - has a long-range view"))
  151. (unit-type mines (image-name "minefield")
  152.   (help "useful for blocking land and sea passages"))
  153.  
  154. (define inert-types (radar mines))
  155.  
  156. (add inert-types acp-per-turn 0)
  157.  
  158. (unit-type agribusiness (image-name "farm") (char "a"))
  159. (unit-type oil-field (image-name "oil-derrick") (char "o"))
  160. (unit-type oil-platform (image-name "oil-derrick"))
  161. (unit-type mine (image-name "iron-mine") (char "m"))
  162. (unit-type gold-mine (image-name "gold-mine") (char "g"))
  163. (unit-type uranium-mine (image-name "uranium-mine") (char "u"))
  164.  
  165. (unit-type technical-center (image-name "facility") (char "t"))
  166. (unit-type fortress  (image-name "facility") (char "f"))
  167. (unit-type research-lab (image-name "facility") (char "r"))
  168. (unit-type nuclear-plant (image-name "facility") (char "n"))
  169. (unit-type library/school (image-name "facility") (char "l"))
  170. (unit-type enlistment (image-name "facility") (char "e"))
  171. (unit-type headquarters (image-name "facility") (char "!"))
  172.  
  173. (unit-type harbor (image-name "port") (char "h"))
  174. (unit-type airfield (image-name "airbase") (char "*"))
  175. (unit-type refinery (image-name "facility") (char "%"))
  176. (unit-type lcm-factory (image-name "facility") (char "j"))
  177. (unit-type hcm-factory (image-name "facility") (char "k"))
  178. (unit-type defense-plant (image-name "facility") (char "d"))
  179. (unit-type shell-industry (image-name "facility") (char "i"))
  180. (unit-type warehouse (image-name "facility") (char "w"))
  181.  
  182. (unit-type bank (image-name "bank") (char "b"))
  183.  
  184. (define facility-types
  185.   (agribusiness oil-field oil-platform mine gold-mine uranium-mine
  186.    bank
  187.    technical-center fortress research-lab nuclear-plant library/school enlistment headquarters
  188.    harbor airfield refinery lcm-factory hcm-factory defense-plant shell-industry warehouse))
  189.  
  190. (add facility-types acp-per-turn 1)
  191.  
  192. (unit-type capital (image-name "city20") (char "c")
  193.   (help "center of the country"))
  194.  
  195. (add capital acp-per-turn 3)
  196.  
  197. ;; Hit points are like effectiveness.
  198.  
  199. (add u* hp-max 100)
  200.  
  201. (material-type food (help "food"))
  202. (material-type sh (help "shell"))
  203. (material-type gun (help "guns"))
  204. (material-type pet (help "petroleum"))
  205. (material-type iron (help "iron ore"))
  206. (material-type dust (help "gold dust"))
  207. (material-type oil (help "crude oil"))
  208. (material-type lcm (help "light construction materials"))
  209. (material-type hcm (help "heavy construction materials"))
  210. (material-type rad (help "rads"))
  211. ; also education and happiness here?
  212. (material-type civ (help "civilians"))
  213. (material-type mil (help "military"))
  214. (material-type uw (help "uncompensated workers")
  215.   (help "slaves, really"))
  216. (material-type gold (help "gold"))
  217.  
  218. (define raw (iron dust oil rad))
  219. (define manufactures (food sh gun pet lcm hcm gold))
  220. (define peoples (civ mil uw))
  221.  
  222. (add peoples people 1)
  223.  
  224. (terrain-type sea (char "."))
  225. (terrain-type settled (image-name "clear") (char "-"))
  226. (terrain-type wilderness (image-name "forest") (char "-"))
  227. (terrain-type mountains (char "^"))
  228. (terrain-type wasteland (char "/")
  229.   (help "uninhabitable due to radioactivity"))
  230. (terrain-type highway (image-name "road") (char "+")
  231.   (subtype connection))
  232.  
  233. (define land (settled wilderness mountains wasteland highway))
  234.  
  235. ;;; Static relationships.
  236.  
  237. ;; Unit vs unit.
  238.  
  239. (table unit-capacity-x
  240.   ;; Engineers can be inside any facility.
  241.   (facility-types (engineers mech-engineers) 1)
  242.   )
  243.  
  244. (add transport-ship-types capacity (6 3))
  245. (add carrier-ship-types capacity (4 4 8))
  246. (add headquarters capacity 8)
  247. (add harbor capacity 8)
  248. (add airfield capacity 8)
  249. (add fortress capacity 8)
  250. (add capital capacity 16)
  251.  
  252. (table unit-size-as-occupant
  253.   (u* u* 100)
  254.   (ground-types transport-ship-types 1)
  255.   (ground-types headquarters 1)
  256.   (ground-types fortress 1)
  257.   (ship-types harbor 1)
  258.   (naval-fighter carrier-ship-types 1)
  259.   (helicopter-types carrier-ship-types 1)
  260.   ((recon-plane asw-plane) carrier-ship-types 1)
  261.   (plane-types airfield 1)
  262.   ;; The capital has a bit of room for anything.
  263.   (u* capital 1)
  264.   (capital capital 100)
  265.   )
  266.  
  267. ;; Unit vs terrain.
  268.  
  269. (table vanishes-on
  270.   (ground-types sea true)
  271.   (ship-types land true)
  272.   ;; (allow radar and mines to be placed in the sea)
  273.   (facility-types sea true)
  274.   (capital sea true)
  275.   ;; Oil platforms can only be placed in sea cells.
  276.   (oil-platform sea false)
  277.   (oil-platform land true)
  278.   ;; Units normally die in wasteland.
  279.   (u* wasteland true)
  280.   ;; Planes can fly over wasteland safely.
  281.   (plane-types wasteland false)
  282. )
  283.  
  284. (add t* capacity 16)
  285.  
  286. (table unit-size-in-terrain
  287.   (u* t* 1)
  288.   ;; Only fill 13/16 of the cell, so other units can pass through, but
  289.   ;; don't let multiple facilities be in a cell.
  290.   (inert-types t* 13)
  291.   (facility-types t* 13)
  292.   (capital t* 13)
  293.   )
  294.  
  295. (table terrain-storage-x
  296.   ;; Room for raw materials
  297.   (t* oil 100)
  298.   (t* iron 100)
  299.   (t* dust 10)
  300.   (t* rad 10)
  301.   ;; Room for peoples
  302.   (settled peoples 999)
  303.   )
  304.  
  305. (table unit-storage-x
  306.   (ground-types food 10)
  307.   (artillery-types sh 100)
  308.   (ground-types mil 1)
  309.   (ship-types food 100)
  310.   ;; Special-function ships.
  311.   (fishing-boat food 200)
  312.   (tanker oil 100)
  313.   (ore-ship iron 100)
  314.   (cargo-ship (sh gun lcm hcm) 100)
  315.   (facility-types food 30)
  316.   (facility-types civ 10)
  317.   ;; Special-function facilities
  318.   (agribusiness food 150)
  319.   (ground-types pet 10)
  320.   (ship-types pet 100)
  321.   ;; Warehouses have lots of room, but only for manufactured goods.
  322.   (warehouse manufactures 999)
  323.   ;; Everything centers on the capital.
  324.   (capital m* 999)
  325.   )
  326.  
  327. ;;; (really need generic capacities for cargo ships)
  328.  
  329. ;;; Actions.
  330.  
  331. (table material-to-act
  332.   ;; Ground units need soldiers to run them.
  333.   (ground-types mil 1)
  334.   ;; Facilities all need civilians to run them.
  335.   (facility-types civ 1)
  336.   )
  337.  
  338. ;;; Movement.
  339.  
  340. (add missile-types speed 30.00)
  341.  
  342. (add inert-types speed 0)
  343. (add facility-types speed 0)
  344. (add capital speed 0)
  345.  
  346. (table mp-to-enter-terrain
  347.   ;; Don't let land units drown themselves.
  348.   (ground-types sea 99)
  349.   )
  350.  
  351. ;;; Construction.
  352.  
  353. (add u* cp 6)
  354.  
  355. (table acp-to-create
  356.   (engineers facility-types 1)
  357.   (headquarters ground-types 1)
  358.   (harbor ship-types 1)
  359.   (airfield plane-types 1)
  360.   (capital engineers 1)
  361.   )
  362.  
  363. (table cp-on-creation
  364.   (engineers facility-types 1)
  365.   (headquarters ground-types 1)
  366.   (harbor ship-types 1)
  367.   (airfield plane-types 1)
  368.   (capital engineers 1)
  369.   )
  370.  
  371. (table acp-to-build
  372.   (engineers facility-types 1)
  373.   (headquarters ground-types 1)
  374.   (harbor ship-types 1)
  375.   (airfield plane-types 1)
  376.   (capital engineers 1)
  377.   )
  378.  
  379. (table cp-per-build
  380.   (engineers facility-types 1)
  381.   (headquarters ground-types 1)
  382.   (harbor ship-types 1)
  383.   (airfield plane-types 1)
  384.   (capital engineers 1)
  385.   )
  386.  
  387. ;; need pet/lcm/hcm to build things also.
  388.  
  389. ;;; Production (and consumption).
  390.  
  391. (table base-production
  392.   ((agribusiness fishing-boat capital) food (100 50 20))
  393.   ((oil-field oil-platform) oil 1)  ;  should be extraction really
  394.   ((enlistment capital) mil 1)
  395.   (capital civ 1)
  396.   (refinery pet 1)
  397.   )
  398.  
  399. (table base-consumption
  400.   ;; Everything eats food.
  401.   (u* food 1)
  402.   (agribusiness food 0) ; a hack
  403.   ;; Capital is self-supporting, but has no excess.
  404.   (capital food 20)
  405.   ;; Most hardware eats petroleum products.
  406.   (ship-types pet 1)
  407.   (plane-types pet 1)
  408.   ;; Inert types don't consume anything at all.
  409.   (inert-types m* 0)
  410.   )
  411.  
  412. (table hp-per-starve
  413.   ;; Going without food is potentially deadly.
  414.   (u* food 1.00)
  415.   ;; Technology types really need their petroleum products.
  416.   (ship-types pet 1.00)
  417.   (plane-types pet 1.00)
  418.   )
  419.  
  420. (table out-length
  421.   ;; Farming has a default supply infrastructure.
  422.   (agribusiness food 5)
  423.   ;; Fishing fleets must rely on land systems to redistribute.
  424.   (fishing-boat food 1)
  425.   ;; The oil business' support machinery can get the oil sent around.
  426.   (oil-field oil 5)
  427.   (oil-platform oil 5)
  428.   ;; Civilians will tend to go where they're needed (looking for jobs).
  429.   (facility-types civ 2)
  430.   ;; Warehouses are redistribution points.
  431.   (warehouse m* 5)
  432.   ;; Capital will be generous with nearby needy units.
  433.   (capital m* 2)
  434.   )
  435.  
  436. (table in-length
  437.   ;; Every type of unit that needs food can get it from an adjacent cell.
  438.   (u* food 1)
  439.   ;; Civilians will tend to go where they're needed (looking for jobs).
  440.   (facility-types civ 2)
  441.   ;; Warehouses are redistribution points.
  442.   (warehouse m* 5)
  443.   ;; The capital always gets special service if it needs something.
  444.   (capital m* 5)
  445.   )
  446.  
  447. ;;; Combat.
  448.  
  449. (table hit-chance
  450.   (infantry-types facility-types 100)
  451.   (infantry-types fortress 50)
  452.   (infantry-types capital 100)
  453.   )
  454.  
  455. (table damage
  456.   (infantry-types facility-types 2d20)
  457.   (infantry-types capital 2d10)
  458.   )
  459.  
  460. (table capture-chance
  461.   ;; Most facilities can't prevent their own capture.
  462.   (infantry-types facility-types 100)
  463.   ;; Fortresses are tough.
  464.   (infantry-types fortress 10)
  465.   (infantry-types capital 50)
  466.   (armor-types capital 70)
  467.   )
  468.  
  469. ;; Nuclear detonation results in the destruction of units and the
  470. ;; creation of wasteland.
  471.  
  472. (add nuke-types acp-to-detonate 1)
  473.  
  474. ;;; Terrain alteration.
  475.  
  476. (table acp-to-add-terrain
  477.   (engineers settled 1)
  478.   (engineers highway 1)
  479.   )
  480.  
  481. (table acp-to-remove-terrain
  482.   (engineers wilderness 1)
  483.   (engineers highway 1)
  484.   )
  485.  
  486. ;;; Vision.
  487.  
  488. (add mobile-radar vision-range 6)
  489. (add radar vision-range 8)
  490.  
  491. ;;; Random setup.
  492.  
  493. ;;; Everybody starts with just the one capital.
  494.  
  495. (add capital start-with 1)
  496.  
  497. (add (sea settled wilderness mountains) alt-percentile-min (  0  70 70  95))
  498. (add (sea settled wilderness mountains) alt-percentile-max ( 70  75 95 100))
  499. (add t* wet-percentile-min 0)
  500. (add t* wet-percentile-max 100)
  501. (add settled wet-percentile-min 40)
  502. (add settled wet-percentile-max 60)
  503.  
  504. (table favored-terrain
  505.   (u* t* 0)
  506.   (capital settled 100)
  507.   (facility-types settled 100)
  508.   )
  509.  
  510. ;; A game's starting units will be full by default.
  511.  
  512. (table unit-initial-supply
  513.   (u* m* 9999)
  514.   ;; ...but minimal soldiers.
  515.   (u* mil 1)
  516.   )
  517.  
  518. (table terrain-initial-supply
  519.   (t* oil 100)
  520.   (t* iron 100)
  521.   (t* dust 1)  ; should be rare but high concentration randomly
  522.   (t* rad 1)
  523.   )
  524.  
  525. ;; Allow many sides to play.
  526.  
  527. (set sides-min 1)
  528. (set sides-max 30)
  529.  
  530. (game-module (instructions (
  531.   "Build up your country and materials."
  532.   "If you can't live in peace with your neighbors,"
  533.   "then be prepared to fight with them."
  534.   )))
  535.  
  536. (game-module (design-notes (
  537.   "Scale is unimportant, this is an abstract game."
  538.   ""
  539.   "This is not entirely like True Empire, but it has some of the feel;"
  540.   "and the complexity!"
  541.   )))
  542.